Controlled information processing apparatus

ABSTRACT

A DTV operating screen is displayed on the CRT display screen of a DTV which is the controlling apparatus of a network. In the event that the user selects the DVHS from the buttons displayed on the DTV operating screen, data corresponding to the DVHS operation screen is input to the DTV, and a DVHS operation screen is displayed on the CRT display screen  61 . The user operation executed regarding the DVHS operation screen are notified from the DTV to the DVHS, so the DTV can execute control corresponding to the operations of the user, without transmitting commands for directly controlling the DVHS.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of prior U.S. application Ser.No. 09/691,951, filed Oct. 19, 2000, now U.S. Pat. No. 6,931,199, thedisclosure of which is incorporated herein by reference, which claimspriority from Japanese Application No. P11-296108, filed Oct. 19, 1999.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an information processing apparatus andmethod, information processing system, and recording medium, andparticularly relates to an information processing apparatus and method,information processing system, and recording medium wherein a controlledapparatus connected to a network transmits control screen data of itselfto a controlling apparatus for display thereupon, and the contents ofoperation executed by the user making reference to the display screen ofthe controlling apparatus are notified to the controlled apparatus bythe controlling apparatus, thereby allowing other apparatuses to becontrolled without-issuing control commands.

2. Description of the Related Art

Home network systems such as the IEEE1394 serial bus can be used toconnect multiple information processing apparatuses (e.g., DTV (DigitalTelevision), DVHS (Digital Video Home System), IRD (Integrated ReceiverDecoder), etc.) and carry out playing and recording of video and audioinformation, or to transmit and receive information between informationprocessing apparatuses to carry out editing processing such as dubbing.Conventionally, control of the controlled information processingapparatus is carried out by the controlling information processingapparatus issuing AV/C (Audio Video/Control) commands to the controlledinformation processing apparatus.

However, in the event that the controlling apparatus needs to transmitcontrol commands to a controlled apparatus in order to controlprocessing executed by another apparatus on a network with multipleinformation processing apparatuses connected, and in the event thatmultiple controlled apparatuses exist, the controlling apparatus has hadto record all control commands for controlling each controlledapparatus.

SUMMARY OF THE INVENTION

The present invention has been made in light of the above, andaccordingly it is an object of the present invention to enable acontrolling apparatus to control the processing of a controlledapparatus without the controlling apparatus transmitting controlcommands of the processing to be executed by the controlled apparatus,by means of displaying a control screen for a controlled apparatus onthe display screen of the controlling apparatus, and notifying thecontrolled apparatus of the operation which the user has performed onthe control screen of the controlled apparatus displayed on thecontrolling apparatus (the location of the operations and the contentsthereof, such as “button A” has been “pressed”).

The information processing apparatus according to a first aspect of thepresent invention comprises:

-   -   first display control means for controlling the display of a        first control screen for controlling the other information        processing apparatuses connected to the network from itself;    -   receiving means for receiving, from a selected information        processing apparatus via the network, second control screen data        for controlling at least the selected information processing        apparatus, in the event that a predetermined information        processing apparatus is selected from the other information        processing apparatuses, based on the first control screen;    -   second display control means for controlling display of the        second control screen received by the receiving means; and    -   output means for outputting signals corresponding to input to        the selected information processing apparatus, in the event that        predetermined instructions are input, based on the second        control screen.

The information processing method according to a second aspect of thepresent invention comprises:

-   -   a first display control step for controlling the display of a        first control screen for controlling the other information        processing apparatuses connected to the network from itself;    -   a receiving step for receiving, from a selected information        processing apparatus via the network, second control screen data        for controlling at least the selected information processing        apparatus, in the event that a predetermined information        processing apparatus is selected from the other information        processing apparatuses, based on the first control screen;    -   a second display control step for controlling display of the        second control screen received by the processing of the        receiving step; and    -   an output step for outputting signals corresponding to input to        the selected information processing apparatus, in the event that        predetermined instructions are input, based on the second        control screen.

The recording medium according to a third aspect of the presentinvention records a program comprising:

-   -   a first display control step for controlling the display of a        first control screen for controlling the other information        processing apparatuses connected to the network from itself;    -   a receiving step for receiving, from a selected information        processing apparatus via the network, second control screen data        for controlling at least the selected information processing        apparatus, in the event that a predetermined information        processing apparatus is selected from the other information        processing apparatuses, based on the first control screen;    -   a second display control step for controlling display of the        second control screen received by the processing of the        receiving step; and    -   an output step for outputting signals corresponding to input to        the selected information processing apparatus, in the event that        predetermined instructions are input, based on the second        control screen.

The information processing apparatus according to a fourth aspect of thepresent invention comprises:

-   -   output means for outputting control screen data for controlling        itself to the other information processing apparatuses via the        network;    -   receiving means for receiving signals corresponding to input        from the other information processing apparatuses via the        network, in the event that predetermined instructions are input        based on the control screen, at the other information processing        apparatuses; and    -   executing means for executing processing corresponding to the        signals received by the receiving means.

The information processing method according to a fifth aspect of thepresent invention comprises:

-   -   an output step for outputting control screen data for        controlling itself to the other information processing        apparatuses via the network;    -   a receiving step for receiving signals corresponding to input        from the other information processing apparatuses via the        network, in the event that predetermined instructions are input        based on the control screen, at the other information processing        apparatuses; and    -   an executing step for executing processing corresponding to the        signals received by the processing of the receiving step.

The recording medium according to a sixth aspect of the presentinvention records a program comprising:

-   -   an output step for outputting control-screen data for        controlling itself to the other information processing        apparatuses via the network;    -   a receiving step for receiving signals corresponding to input        from the other information processing apparatuses via the        network, in the event that predetermined instructions are input        based on the control screen, at the other information processing        apparatuses; and    -   an executing step for executing processing corresponding to the        signals received by the processing of the receiving step.

With the information processing system according to a seventh aspect ofthe present invention;

-   -   a first information processing apparatus comprises:        -   first display control means for controlling the display of a            first control screen for controlling the other information            processing apparatuses, including the second information            processing apparatus, connected to the network from itself;        -   receiving means for receiving, from the second information            processing apparatus via the network, second control screen            data for controlling at least the second information            processing apparatus, in the event that the second            information processing apparatus is selected from the other            information processing apparatuses, based on the first            control screen;        -   second display control means for controlling display of the            second control screen received by the receiving means; and        -   output means for outputting signals corresponding to input            to the second information processing apparatus, in the event            that predetermined instructions are input, based on the            second control screen; and    -   a second information processing apparatus comprises:        -   output means for outputting control screen data for            controlling itself to the first information processing            apparatuses via the network;        -   receiving means for receiving signals corresponding to input            from the first information processing apparatuses via the            network, in the event that predetermined instructions are            input based on the control screen, at the first information            processing apparatus; and        -   executing means for executing processing corresponding to            the signals received by the receiving means.

With the information processing apparatus according to the first aspect,the information processing method according to the second aspect, andthe recording medium according to the third aspect, the display of afirst control screen for controlling the other information processingapparatuses connected to the network from itself is controlled, secondcontrol screen data for controlling at least the selected informationprocessing apparatus is received from a selected information processingapparatus via the network in the event that a predetermined informationprocessing apparatus is selected from the other information processingapparatuses, based on the first control screen, display of the secondcontrol screen received by the receiving means is controlled, and in theevent that predetermined instructions are input based on the secondcontrol screen, signals corresponding to the input are output to theselected information processing apparatus.

With the information processing apparatus according to the fourthaspect, the information processing method according to the fifth aspect,and the recording medium according to the sixth aspect, control screendata for controlling itself is output to the other informationprocessing apparatuses via the network, signals corresponding to inputfrom the other information processing apparatuses via the network arereceived in the event that predetermined instructions are input based onthe control screen at the other information processing apparatuses, andprocessing corresponding to the received signals is executed.

With the information processing system according to the seventh aspect,at the first information processing apparatus, the display of a firstcontrol screen for controlling another information processingapparatuses connected to the network containing the informationprocessing apparatuses from itself is controlled, second control screendata for controlling at least the second information processingapparatus is received from the second information processing apparatusvia the network in the event that the second information processingapparatus is selected from the other information processing apparatuses,based on the first control screen, display of the second control screenreceived by the receiving means is controlled, and in the event thatpredetermined instructions are input based on the second control screen,signals corresponding to the input are output to the second informationprocessing apparatus, and at the second information processingapparatus, control screen data for controlling itself is output to thefirst information processing apparatus via the network, signalscorresponding to input from the first information processing apparatusvia the network are received in the event that predeterminedinstructions are input based on the control screen at the firstinformation processing apparatus, and processing corresponding to thereceived signals is executed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating the configuration of a networksystem;

FIG. 2 is a block diagram illustrating the detailed configuration of theDTV shown in FIG. 1;

FIG. 3 is a block diagram illustrating the detailed configuration of theDVHS shown in FIG. 1;

FIG. 4 is a block diagram illustrating the detailed configuration of theIRD shown in FIG. 1;

FIG. 5 is a flowchart for describing exchange of data between thecontroller and the target;

FIG. 6 is a diagram for describing the GUI_UPDATE command;

FIG. 7 is a diagram for describing the data of the support_model area;

FIG. 8 is a diagram for describing the data of the availability area;

FIG. 9 is a diagram for describing the data of the generation_ID area;

FIG. 10 is a diagram for describing the data of the subfunction area;

FIG. 11 is a diagram for describing the data of the scope area;

FIG. 12 is a diagram for describing the PUSH_GUI_DATA command;

FIG. 13 is a diagram for describing the data of the subfunction area;

FIG. 14 is a diagram for describing the data of the status area;

FIG. 15 is a diagram for describing the USER_ACTION command;

FIG. 16 is a diagram for describing the data of the action_type area;

FIG. 17 is a flowchart for describing the processing of the DTV;

FIG. 18 is a flowchart for describing the processing of the DTV;

FIG. 19 is a diagram for describing the processing screen displayed onthe DTV;

FIG. 20 is a diagram for describing the processing screen displayed onthe DTV;

FIG. 21 is a diagram for describing the processing screen displayed onthe DTV;

FIG. 22 is a diagram for describing the processing screen displayed onthe DTV;

FIG. 23 is a flowchart for describing the processing of the DVHS; and

FIG. 24 is a flowchart for describing the processing of the DVHS.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a block diagram illustrating the configuration of a networksystem wherein multiple information processing apparatuses are connectedto a home network or the like.

Connected to the IEEE1394 serial bus 1 are a DTV 2, DVHS 3, and an IRD4. The DTV 2 transmits signals to the DVHS 3 and IRD 4 via the IEEE1394serial bus 1 inquiring the GUID (Global Unique Identifier) or functionsheld by each. The DVHS 3 and IRD 4 transmit signals indicating their ownGUID or functions to the DTV 2, in response to the inquiry signalsreceived. The DTV 2 detects the connection state of the devicesconnected to the IEEE1394 serial bus 1 from this information, anddisplays a GUI (Graphical User Interface) for selecting these functionson the CRT (Cathode Ray Tube) described later with reference to FIG. 2.

The DVHS 3 can transmit to the IRD 4 AV/C commands for directlycontrolling the processing which the IRD 4 can execute, but the DTV 2does not have AV/C commands for directly controlling the processingexecuted by the DVHS 3 and IRD 4.

FIG. 2 is a block diagram illustrating the detailed configuration of theDTV 2. Signals indicating the GUID or functions transmitted from theDVHS 3 and IRD 4 via the IEEE1394 serial bus 1 are input to the CPU 12via the IEEE1394 interface 11. The CPU 12 generates signalscorresponding to the GUI for selecting the DVHS 3 and IRD 4 based on theinput signals indicating the GUID or functions, and transmits thesignals to the picture generating unit 14 via the multiplex separatingunit 13. The picture generating unit 14 generates picture signalscorresponding to the input signals, and outputs these signals to the CRTdriving circuit 15. The CRT driving circuit 15 takes the verticalsynchronizing and horizontal synchronizing of the input picture signals,and outputs the picture signals to the CRT 16, where the signals aredisplayed.

The user makes reference to the display on the CRT 16 and operates theoperating panel 17 or an unshown remote commander, selects a desireddevice from the DVHS 3 or IRD 4 connected to the IEEE1394 serial bus 1,and further instructs the processing for the selected device to execute.In the event that the user operates the remote commander, the infraredphotoreceptor 18 receives infrared signals representing the operationsof the user from the remote commander. The CPU 12 supplies broadcastwaves received with the antenna 21 and control signals generated by theCPU 12, for example, based on the signals representing the operation ofthe user, input from the operating panel 17 or the infraredphotoreceptor 18, to the DVHS 3 or IRD 4 via the IEEE1394 interface 11and IEEE1394 serial bus 1.

The ROM 19 stores programs and the like for the CPU 12 to execute, anddata necessary for the GUI display on the CRT 16 (e.g., datacorresponding to icons). These programs and data are read out to the CPU12 as necessary. The RAM 20 stores data and the like generated by theexecuting of the programs.

The broadcast waves received with the antenna 21 are demodulated withthe tuner 22, decoded by the receiving circuit unit 23, and input to themultiplex separating unit 13. The multiplex separating unit 13 separatessignals corresponding to broadcast waves into audio signals and picturesignals for example, based on the control signals input from the CPU 12,and the signals are respectively output to the speakers 25 via an audiosignal playing unit 24 and to the CRT 16 via the picture generating unitand CRT driving circuit unit 15, or supplied to the DVHS 3 via theIEEE1394 interface 11 and IEEE1394 serial bus 1.

A drive 26 is connected to the CPU 12, to which a magnetic disk 27,optical disk 28, magneto-optical disk 29, and semiconductor memory 30,etc., can be inserted. The CPU 12 can read out the data stored in themagnetic disk 27, optical disk 28, magneto-optical disk 29, andsemiconductor memory 30.

FIG. 3 is a block diagram illustrating the detailed configuration of theDVHS 3. In the event that the user operates the operating panel 41 or anunshown remote commander, the CPU 43 receives input of signalscorresponding to the operations of the user from the operating panel 41or the infrared photoreceptor 42 (in the event that the user operatesthe remote commander, the infrared photoreceptor 42 receives infraredsignals representing the operations of the user from the remotecommander, and outputs the signals to the CPU 43). Also, the CPU 43inputs control signals from other devices connected to the IEEE1394serial bus 1 via the IEEE1394 serial bus 1 and IEEE1394 interface 44.

The CPU 43 generates control signals for controlling the VCR controlunit 45 for example, based on these signals, and outputs these controlsignals to the VCR control unit 45. Based on the control signals inputfrom the CPU 43, the VCR control unit 45 performs actions such asrecording picture data input from another device via the IEEE1394 serialbus 1 and IEEE1394 interface 44 on an unshown video cassette tape, andtransmitting picture data recorded on the unshown video cassette tape toother devices connected to the IEEE1394 serial bus 1, via the IEEE1394interface 44 and IEEE1394 serial bus 1, for example.

Also, if necessary the CPU 43 performs actions such as controlling theGUI engine 46 to create image data and GUI data representing the menuscreen and outputs the GUI data to the NTSC (National TV Standardscommittee) encoder 47 so as to be converted into NTSC data and displayedas the menu screen on a unshown monitor, and transmitting the image dataand GUI data representing the menu screen to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, by later-described processingdescribed with reference to FIGS. 23 and 24.

Further, the CPU 43 can perform actions such as reading out programs anddata stored in the RAM 48, and saving data to the RAM 48 as necessary.The RAM 48 saves programs to be executed by the CPU 43 AV/C commands forcontrolling the IRD 4, and so forth.

FIG. 4 is a block diagram illustrating the detailed configuration of theIRD 4. In the event that the user operates the unshown remote commander,the infrared photoreceptor 51 receives infrared signals representing theoperations of the user from the remote commander. The infraredphotoreceptor 51 outputs signals corresponding to the operation of theuser to the CPU 52. The CPU 52 receives input of control signals fromother devices connected to the IEEE1394 serial bus 1 via the IEEE1394serial bus 1 and IEEE1394 interface 53.

Based on these signals, the CPU 52 generates control signals forcontrolling the CS (Communications Satellite) tuner main unit 55 forexample, and outputs these to the CS tuner main unit 55. Signalsreceived with the antenna 54 are input to the CS tuner main unit 55. TheCS tuner main unit 55 performs demodulation and de-scrambling of theinput received signals according to the signals input from the CPU 52,outputs the signals to the NTSC encoder 56 where they are converted intoNTSC data, which is displayed on an unshown monitor or transmitted toother devices connected to the IEEE1394 serial bus 1 via the IEEE1394interface 53 and IEEE1394 serial bus 1. Further, the CPU 52 saves datain the RAM 57 and reads out data saved in the RAM 57, as necessary.

Now, in the network shown in FIG. 1, the user does not directly performinstructions to each of the devices using the remote commander or thelike of the corresponding device, but rather uses the DTV 2 as thecontroller and the DVHS 3 as a target (panel sub-unit) and displays theoperating screen (panel) of the DVHS 3 on the operating screen displayedon the CRT 16 of the DTV 2, thereby using the operating screen displayedon the DTV 2 to perform operations regarding the DVHS 3 and the IRD 4.

Next, the exchange of data between the controller and target fordisplaying the operating screen of the DVHS 3 on the operating screen ofthe DTV 2 will be described, with reference to FIG. 5.

The controller appropriates a connection to the target. The targetreturns a response to the controller corresponding to the connectionappropriation, thereby establishing the connection. With thisconnection, a greater amount of data is transmitted from the target tothe controller, in comparison with the amount of data transmitted fromthe controller to the target. In this way, the Asymmetric Data Transfer(ADT) model is used for the data exchange between the controller andtarget. In this ADT model, control signals from the controller to thetarget are transmitted using panel sub-unit commands, and on the otherhand, GUI data from the target to the controller is transmitted using anasynchronous connection. The panel sub-unit commands are the GUI_UPDATEcommand which will be described later with reference to FIG. 6, thePUSH_GUI_DATA command which will be described later with reference toFIG. 12, and the USER_ACTION command which will be described later withreference to FIG. 15.

The controller transmits the GUI_UPDATE command and PUSH_GUI_DATAcommand to the target, the target receives the commands, and returns aresponse to the controller.

The GUI_UPDATE command will be described with reference to FIG. 6. TheGUI_UPDATE command is a command which causes the controller to check thegeneration ID of the panel sub-unit, thereby confirming the generation(version) of the corresponding panel sub-unit, and requesting a new GUIelement from the target. This command is defined by a control commandand status command.

The source plug No. is specified as a condition for the source_plugarea. The source plug (i.e., device connected to the network) specifiedin this area outputs GUI data to the controller. In the event that thecontroller transmits the GUI_UPDATE command with “start” described inthe later-described subfunction area to the source plug, and obtains aresponse of “accept” from the source plug, the controller can become theowner of the corresponding source plug.

A source plug support model is specified as a condition to thesupport_model area. The values of the support model are shown in FIG. 7.

The validity (available space) of the source plug is specified as acondition to the availability area. Example values of availability areshown in FIG. 8. In the event that the source plug is “available”, thecontroller can use the source plug with the model specified in thesupport model area.

For example, in the event that the source plug of the panel sub-unitacts as an EIA (Electronic Industries Association)-775 model, andsupports multicasting of EIA-7750SD data, the availability area isalways set to “0”. In other cases, in the event that the controller isusing the source plug, the availability area value is set to “1”.

Described in the generation ID area is which generation of AV/C panelsub-unit element is used for the corresponding sub-unit. The definitionsof the generation ID value are shown in FIG. 9.

The functions of the command are described in the subfunctions area. Forexample, in the event that the controller attempts to execute processingusing the panel sub-unit, or in the event that the controller attemptsto change the range specified by the values in the later-described scopearea, “start” is described in the sub-function area, and transmitted tothe corresponding target. Then, the panel sub-unit which has receivedthis GUI_UPDATE command starts the processing of transferring the GUIdata by asynchronous connection.

Also, in the event that the processing which the controller and thepanel sub-unit are executing together ends, the controller transmits aGUI_UPDATE command with a “stop” sub-function described, to the panelsub-unit. The, the panel sub-unit which has received this GUI_UPDATEcommand stops transmission of the changed data. Following transmittingof the GUI_UPDATE command with “stop” described to the sub-functionarea, the controller can start the processing again by transmitting tothe target a GUI_UPDATE command with “start” described in thesub-function area once more, in the event that the asynchronousconnection with the source plug is not cut off. FIG. 10 shows thedefinitions of the sub-function values. The “stop” and “change”sub-functions are valid only for notification of the owner of thecorresponding source plug.

The scope (data range) of the panel sub-unit specified by the controlleris described in the scope area. In the event that the scope valuerepresents the current panel until the panel sub-unit receives the firstPUSH_GUI_DATA, the current panel represents the basic panel. Thedefinitions of the scope value are shown in FIG. 11.

Next, the PUSH_GUI_DATA command will be described with reference to FIG.12. The PUSH_GUI_DATA command request a GUI update from the panelsub-unit in the event that the GUI data is changed. This command isdefined by a control command and status command.

The source plug No. is specified as a condition for the source_plugarea. The source plug specified in this area outputs the GUI data. Inthe event that the controller is not the owner of the correspondingsource plug specified here (whether or not the controller is the ownerof the source plug is determined by the response of the target as to theGUI_UPDATE command, described with reference to FIG. 6), the panelsub-unit receiving the PUSH_GUI_DATA command returns a “rejected”response, indicating rejection.

The functions of the command are described in the subfunctions area.FIG. 13 illustrates the definitions of the subfunction values. In theevent that the controller attempts to obtain the GUI data of the panelsub-unit using asynchronous connection, “new” is described to thesub-function area. In the same way, in the event that the controllerattempts to stop reception of GUI data using asynchronous connection,“clear” is described to the sub-function area.

The current panel generation of the scope (range of data) specified bythe controller is described in the generation number area. At the pointthat the controller initially transmits this command, the generation No.area is set to FF₍₁₆₎. Then, the panel sub-unit describes the currentgeneration No. of the specified scope in the response to this command,and returns it. In the event that the returned generation No. is 00₍₁₆₎,this panel sub-unit cannot change the GUI element within the panel.

The current states of the panel sub-unit is described within the statusarea. For example in the event that the controller is generating acommand, the value of the status area is FF₍₁₆₎. The panel sub-unit,upon receiving this, returns the current status of itself. Thedefinitions of the status area value are shown in FIG. 14.

The GUI element requested at the later-described element identifier areais described in the indicator area. “with_data” and “level” aredescribed in the indicator area. “with_data” is represented by one bit,and indicates whether or not a data element directly linked to from thespecified element is requested along with the specified element. In theevent that “with_data” is set to “1”, the panel sub-unit transmits thedata directly linked to along with the specified element, to thecontroller. In the event that “with_data” is set to “0”, the panelsub-unit transmits only the specified element to the controller, andother data elements are not transmitted. “level” specifies the datarequest level, such as whether the GUI element requested by thecontroller is only the specified GUI element, or up to data directlylinked to, or all GUI data, and so forth.

Independent identification names of the panel, group, GUI element, etc.,contained in the panel data configuration, are described in the elementidentifier area. Element types are also described in the elementidentifier area, thereby performing identification with the descriptionof this portion such as whether the requested GUI element is a panel ordevice icon, and so forth.

Now, returning to FIG. 5, description will be made regarding dataexchange between the controller and target for displaying the operatingscreen of the DVHS 3 on the operating screen of the DTV 2.

The target, upon receiving a data update request from the controller,transmits its own control screen GUI data to the controller, suingasynchronous connection. The controller displays the GUI screen of thetarget, and starts an interactive dialogue with the user.

In the event that the user uses the GUI displayed on the display screenof the controller to performed an operation of specifying some sort ofprocessing to the target, the contents of the operation are transmittedto the target using the USER_ACTION command. Then, the target which hasreceived the USER_ACTION command performs processing based on thecontents of the command, and transmits the processing results to thecontroller. For example, in the event that the user presses the GUIbutton on the operating screen of the controller to place the apparatuscorresponding the target in a “rewind mode”, the controller transmits aUSER_ACTION command to the target indicating that the “rewind mode”button has been “pressed”. The target transmits a response to thecontroller indicating the success (or failure) of the command. Also, inthe event that the GUI data of the target is changed by the targetreceiving the USER_ACTION command and executing the processing, the newGUI data is transmitted to the controller using asynchronous connection.The controller receives the new GUI data, and updates the screendisplay.

The controller and target execute processing according to the operationof the user, repeating the exchange of USER_ACTION commands and exchangeof GUI data. In the event that all tasks have been completed, thecontroller transmits a GUI_UPDATE command with “stop” described in thesub-function area to the target, thereby cutting off the connection withthe target.

The USER_ACTION command will be described with reference to FIG. 15. Auser action control command is a command for notifying a target of anoperation which the user has performed regarding a target GUI componentdisplayed on the display screen of the controller. The USER_ACTIONcontrol command can only transmit to the owner of the source plug. Thesource plug ignores user action commands transmitted from othercontrollers which are not the owner thereof.

The source plug No. is specified as the condition for the source plugarea, and the source plug specified here outputs the GUI data. Thegeneration No. area describes the current panel generation of the scope(range of data) specified by the controller.

Independent identification names of the panel, group, GUI element, etc.,contained in the panel data configuration, are contained in the elementidentifier area. That is, the target can recognize which part on thepanel which the user has performed operation upon, by making referenceto the identification name.

Values indicating the type of action regarding the GUI element (e.g.,“select”, “press”, etc.) are described in the action_type area. Also,the data area contains data specified by each action type. The relationbetween the values of the action type area and the data areas thereof isshown in FIG. 16.

Next, the processing performed by the DTV 2 will be described withreference to the flowcharts in FIGS. 17 and 18. Here, a connection hasalready been established as in FIG. 1, and asynchronous connection isestablished with the DTV 2 as the controller and the DVHS 3 as thetarget.

In step S1, the CPU 12 reads out data for displaying the DTV operatingscreen 71 on the CRT display screen 61 shown in FIG. 19, from the ROM19, outputs this to the picture generating unit 14 via the multiplexseparating unit 13, converts this into image data at the picturegenerating unit 14, takes vertical synchronization and horizontalsynchronization at the CRT driving circuit 15, and outputs to the CRT16, where display is made. Buttons for the user to instruct theoperation of the DTV 2 are displayed on the DTV operating screen 71displayed on the CRT display screen 61 (in this case, buttons forinstructing channel specification), and also, icons for selecting theDVHS 3 and the IRD 4 connected to the network are displayed, so that theuser can execute processing of the DVHS 3 and the IRD 4 using thisdisplay screen.

In step S2, the user selects the icon of the DVHS 3 on the DTV operatingscreen 71 shown in FIG. 19. The signal indicating selection by the useris input to the CPU 12 from the operating panel 17 or the infraredphotoreceptor 18.

In step S3, the CPU 12 transmits to the DVHS 3 a GUI_UPDATE command with“start” described in the sub-function area thereof via the IEEE1394interface 11 and IEEE1394 serial bus 1, in order to request panel datafor performing operation of the DVHS 3. The DVHS 3 which has receivedthe GUI_UPDATE command confirms that the DTV 2 is the owner of thesource plug, and following a response being returned, GUI data fordisplay a panel for itself is transmitted to the DTV 2 usingasynchronous connection (the processing in step S32 in thelater-described FIG. 23).

In step S4, the IEEE1394 interface 11 receives the GUI data transmittedfrom the DVHS 3, and outputs signals to the CPU 12 indicating that newGUI data has been received.

In step S5, the CPU 12 outputs the data received by the IEEE1394interface 11 in step S4 via the multiplex separating unit 13, picturegenerating unit 14, and CRT driving circuit 15, to the CRT 16, where itis displayed. Then, as shown in FIG. 20, a new DVHS operating screen 72is displayed on the CRT display screen 61.

In step S6, the user makes reference to the CRT display screen 61 shownin FIG. 20, and selects the button of the IRD 4 displayed on the DVHSoperating screen 72. Signals indicating that the user has selected theIRD 4 button is input to the CPU 12 from the operating panel 17 or theinfrared photoreceptor 18.

In step S7, the CPU 12 transmits a USER_ACTION command to the DVHS 3indicating that the user has selected the IRD 4 (i.e., with anidentification name indicating that the GUI element is one correspondingto the button for selecting the IRD 4 described in the elementidentifier area, and “select described in the action type area), via theIEEE1394 interface 11 and IEEE1394 serial bus 1. The DVHS 3 which hasreceived this USER_ACTION command returns a response, and then transmitsthe GUI data changed according to the operation of the user to the DTV 2using asynchronous connection (the processing in step S34 in thelater-described FIG. 23).

In step S8, the IEEE1394 interface 11 receives GUI data transmitted fromthe DVHS 3, and outputs signals indicating that new GUI data has beenreceived to the CPU 12.

In step S9, the CPU 12 outputs the data received by the IEEE1394interface 11 in step S8 via the multiplex separating unit 13, picturegenerating unit 14, and CRT driving circuit 15, to the CRT 16, where itis displayed. Then, as shown in FIG. 21, a new button is displayed onthe DVHS operating screen 72 on the CRT display screen 61, for operatingthe IRD 4 (in this case, channel selection).

In step S10, the user changes the channel of the IRD 4 (in this case theuser presses the button for changing the channel) on the DVHS 3operating screen displayed on the display screen of the CRT 16 shown inFIG. 21. Signals indicating that the user has changed the IRD 4 channelare input to the CPU 12 from the operating panel 17 or the infraredphotoreceptor 18.

In step S11, the CPU 12 transmits a USER_ACTION command to the DVHS 3indicating that the user has pressed a button for changing the channelof the IRD 4, via the IEEE1394 interface 11 and IEEE1394 serial bus 1.The DVHS 3 which has received this USER_ACTION command returns aresponse, and transmits an AV/C command for controlling the IRD 4according to the operations of the user to the IRD 4, (the processing instep S37 in the later-described FIG. 23), and further transmits the GUIdata changed according to the changing of the IRD channel to the DTV 2using asynchronous connection (the processing in step S38 in thelater-described FIG. 23).

In step S12, the IEEE1394 interface 11 receives GUI data transmittedfrom the DVHS 3, and outputs signals indicating that new GUI data hasbeen received to the CPU 12. The CPU 12 outputs the data received viathe multiplex separating unit 13, picture generating unit 14, and CRTdriving circuit 15, to the CRT 16. Consequently, the display portion forthe IRD 4 channel on the DVHS operating screen 72 is changed.

In step S13, the user makes reference to the CRT display screen 61 shownin FIG. 21, and selects the button of the DVHS 3 displayed on theoperating screen of the DVHS 3. Signals indicating that the user hasselected the DVHS 3 button is input to the CPU 12 from the operatingpanel 17 or the infrared photoreceptor 18.

In step S14, the CPU 12 transmits a USER_ACTION command to the DVHS 3indicating that the user has selected the DVHS 3, via the IEEE1394interface 11 and IEEE1394 serial bus 1. The DVHS 3 which has receivedthis USER_ACTION command returns a response to the DTV, and thentransmits the GUI data changed according to the operation of the user tothe DTV 2 using asynchronous connection (the processing in step S40 inthe later-described FIG. 24).

In step S15, the IEEE1394 interface 11 receives GUI data transmittedfrom the DVHS 3, and outputs signals to the CPU 12 indicating that newGUI data has been received.

In step S16, the CPU 12 outputs the data received by the IEEE1394interface 11 in step S15 via the multiplex separating unit 13, picturegenerating unit 14, and CRT driving circuit 15, to the CRT 16, where itis displayed. As shown in FIG. 22, a new button is displayed on the DVHSoperating screen 72 on the CRT display screen 61, for operating the DVHS3 (in this case, action mode selection).

In step S17, the user selects the REC button from the DVHS operatingscreen 72 displayed on the CRT display screen 61 shown in FIG. 22.Signals indicating that the user has selected the REC button on the DVHS3 operating screen 72 are input to the CPU 12 from the operating panel17 or the infrared photoreceptor 18.

In step S18, the CPU 12 transmits a USER_ACTION command to the DVHS 3indicating that the user has selected the REC button, via the IEEE1394interface 11 and IEEE1394 serial bus 1. The DVHS 3 which has receivedthis USER_ACTION command returns a response, and then starts therecording processing according to the operation of the user (theprocessing in step S42 in the later-described FIG. 24).

In step S19, the user selects the STOP button from the DVHS operatingscreen 72 displayed on the CRT display screen 61 shown in FIG. 22.Signals indicating that the user has selected the STOP button on theDVHS operating screen 72 are input to the CPU 12 from the operatingpanel 17 or the infrared photoreceptor 18.

In step S20, the CPU 12 transmits a USER_ACTION command to the DVHS 3indicating that the user has selected the STOP button, via the IEEE1394interface 11 and IEEE1394 serial bus 1. The DVHS 3 which has receivedthis USER_ACTION command returns a response, and then ends the recordingprocessing according to the operation of the user (the processing instep S44 in the later-described FIG. 24).

In step S21, the CPU 12 transmits to the DVHS 3 a GUI_UPDATE commandwith “stop” described in the sub-function area thereof via the IEEE1394interface 11 and IEEE1394 serial bus 1, and the processing ends.

Now, while the above-described arrangement involves the user operationsinstructing the starting and ending of the recording processing, anarrangement may be made for example wherein a record reservation settingbutton is provided to the DVHS operating screen 72 on the CRT displayscreen 61 shown in FIG. 22, such that the CPU 12 transmits USER_ACTIONcommands to the DVHS 3 via the IEEE1394 interface 11 and IEEE1394 serialbus 1, according to the recording start time and recording end time setby the user.

Next, description will be made with reference to the flowcharts in FIGS.23 and 24 regarding the processing of the DVHS 3 which is performed inparallel with the processing of the DTV 2 described with FIGS. 17 and18.

In step S31, the IEEE1394 interface 44 receives from the DTV 2GUI_UPDATE command (the command transmitted by the CPU 12 of the DTV 2in step S3 in FIG. 17) requesting updating of the GUI data correspondingto the operation screen of the DVHS 3, via the IEEE1394 serial bus 1,and inputs this command to the CPU 43.

In step S32, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, reads out data corresponding toits own operating screen from the GUI engine 46, and transmits this tothe DTV 2 via the IEEE1394 interface 44 and IEEE1394 serial bus 1. TheDTV 2 receives this data corresponding to the operating screen of theDVHS 3, and displays the data on the CRT display screen 61 (theprocessing of steps S4 and S5 in FIG. 17).

In step S33, the IEEE1394 interface 44 receives a USER_ACTION commandfrom the DTV 2 via the IEEE1394 serial bus 1 indicating that the userhas selected the icon representing the IRD 4 on the DVHS operatingscreen 72 of the DTV (the command transmitted by the CPU 12 of the DTV 2in step S7 of FIG. 17), and inputs this to the CPU 43.

In step S34, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, confirms that the user hasselected the IRD 4 from the input USER_ACTION command, causes the GUIengine 46 to generate GUI data corresponding to the operating buttons ofthe IRD 4 to the DTV 2, and transmits GUI data corresponding to theaddition of operating buttons for the IRD 4, via the IEEE1394 interface44 and IEEE1394 serial bus 1.

In step S35, the CPU 43 calls an AV/C command for generating apoint-to-point connection from the RAM 48, in order to enable real-timetransfer of streaming data (continuous data) from the IRD 4 to the DVHS3, transmits to the IRD 4 via the IEEE1394 interface 44 and IEEE1394serial bus 1, and establishes a point-to-point connection between theDVHS 3 and the IRD 4.

In step S36, the IEEE1394 interface 44 receives a USER_ACTION commandfrom the DTV 2 via the IEEE1394 serial bus 1 indicating that the userhas pressed a button for changing the channel of the IRD 4 on the DVHSoperating screen 72 of the DTV 2 (the command transmitted by the CPU 12of the DTV 2 in step S11 of FIG. 17), and outputs this USER_ACTIONcommand to the CPU 43.

In step S37, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, reads out aDIRECT_SELECT_INFORMATION_TYPE command which is an AV/C command forinstructing changing of channels, from the RAM 48, and transmits this tothe IRD 4 via the IEEE1394 interface 44 and IEEE1394 serial bus 1.

Then, the CPU 52 of the IRD 4 receives input of theDIRECT_SELECT_INFORMATION_TYPE command via the IEEE1394 serial bus 1 andIEEE1394 interface 53. The CPU 52 generates control signals for changingthe received channel according to the instructions of the inputcommands, and outputs the control signals to the CS tuner main unit 55.The CS tuner main unit 55 changes the received channel according to theinput control signals.

In step S38, the CPU 43 inputs signals indicating that the channel ofthe IRD 4 has been changed, to the GUI engine 46, the GUI engine 46changes the GUI data corresponding to the channel of the IRD 4, andtransmits the GUI data corresponding to the channel change of the IRD 4to the DTV 2 via the IEEE1394 interface 44 and IEEE1394 serial bus 1.

In step S39, the IEEE1394 interface 44 receives a USER_ACTION commandfrom the DTV 2 via the IEEE1394 serial bus 1 indicating that the userhas selected the icon representing the DVHS 3 on the DVHS operatingscreen 72 of the DTV 2 (the command transmitted by the CPU 12 of the DTV2 in step S14 of FIG. 18). The IEEE1394 interface 44 outputs thisreceived USER_ACTION command to the CPU 43.

In step S40, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, and inputs signals indicatingthat the DVHS 3 has been selected to the GUI engine 46. The GUI engine46 generates GUI data corresponding to the DVHS operating buttons, andtransmits GUI data corresponding to the addition of operating buttonsfor the DVHS 3 to the DTV 2, via the IEEE1394 interface 44 and IEEE1394serial bus 1.

In step S41, the IEEE1394 interface 44 receives a USER_ACTION commandfrom the DTV 2 via the IEEE1394 serial bus 1 indicating that the userhas selected the REC button of the DTV 2 on the DVHS operating screen 72(the command transmitted by the CPU 12 of the DTV 2 in step S18 of FIG.18). The IEEE1394 interface 44 outputs this received USER_ACTION commandto the CPU 43.

In step S42, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, and executes the processing forstarting recording. That is, the CPU 43 transmits an AV/C command to theIRD 4 instructing transmission of received broadcast data using thepoint-to-point connection established in step S35, via the IEEE1394interface 44 and IEEE1394 serial bus 1. The CPU 52 of the IRD 4 inputsthe AV/C command via the IEEE1394 serial bus 1 and IEEE1394 interface53, generates control signals for transmitting the broadcast wavesreceived with the antenna 54 as streaming data to the DVHS 3, andoutputs to the CS tuner main unit 55. The CS tuner main unit 55demodulates the received waves input via the antenna 54 according tothese control signals, and transmits to the DVHS 3 via the IEEE1394interface 44 and IEEE1394 serial bus 1.

The IEEE1394 interface 44 receives streaming data transmitted from theIRD 4 via the IEEE1394 serial bus 1. The CPU 43 outputs the receivedstreaming data to the VCR control unit 45 to the IEEE1394 interface 44,and the data input to the VCR control unit 45 is recorded on an unshownvideo cassette tape.

In step S43, the IEEE1394 interface 44 receives a USER_ACTION commandfrom the DTV 2 via the IEEE1394 serial bus 1 indicating that the userhas selected the STOP button of the DTV 2 on the DVHS operating screen72 (the command transmitted by the CPU 12 of the DTV 2 in step S20 ofFIG. 18). The IEEE1394 interface 44 outputs this received USER_ACTIONcommand to the CPU 43.

In step S44, the CPU 43 returns a response to the DTV 2 via the IEEE1394interface 44 and IEEE1394 serial bus 1, and executes the processing forending recording. That is, the CPU 43 stops the processing for recordingthe data input to the VCR control unit 45 onto the unshown videocassette tape, and also transmits an AV/C command to the IRD 4instructing stopping transmission of streaming data, via the IEEE1394interface 44 and IEEE1394 serial bus 1. The CPU 52 of the IRD 4 inputsthe AV/C command via the IEEE1394 serial bus 1 and IEEE1394 interface53, generates control signals for stopping transmission of the streamingdata, and outputs to the CS tuner main unit 55. The CS tuner main unit55, upon receiving these control signals, stops transmitting thestreaming data.

In step S45, the IEEE1394 interface 44 receives from the DTV 2 aGUI_UPDATE command with “stop” described in the sub-function areathereof (the command transmitted by the CPU 12 of the DTV 2 in step S21in FIG. 18), via the IEEE1394 serial bus 1. The IEEE1394 interface 44outputs the received GUI_UPDATE command to the CPU 43. The CPU 43receives input of this GUI_UPDATE command, returns a response to the DTV2 via the IEEE1394 interface 44 and IEEE1394 serial bus 1, and stopstransmission of GUI data to the DTV 2, thereby ending the processing.

Now, description has been made so far regarding cases using a networkcomprising an IEEE1394 serial bus 1, but the same processing may beperformed on a network configured using other connection methods, aswell.

The above-described series of the processing can be executed withhardware, or can be executed with software. In the event of executingthe series of the processing with software, programs comprising thissoftware may be installed in a computer (e.g., the CPU 12 in FIG. 2 andthe CPU 43 in FIG. 3) assembled into an information processing apparatusserving as dedicated hardware, or installed in a common-use personalcomputer for example, which is capable of executing various functions byinstalling various programs thereto.

As shown in FIG. 2, the recording medium is not only configured ofpackaged media with the program recorded thereon separate from thecomputer, distributed for providing programs to the user, such asmagnetic discs 27 (including floppy disks), optical disks 28 (includingCD-ROMs (Compact Disk Read-only Memory) and DVDs (Digital VersatileDisk)), Magneto-optical disks 29 (including MDs (mini-Disk), orsemiconductor memory 30, but also is configured of the ROM 19 on whichthe program is recorded that is provided to the user in a statepre-assembled into the DTV 2, the RAM 48 on which the program isrecorded that is provided to the user in a state pre-assembled into theDVHS 3, and so forth.

Note that the steps describing the program recorded on the recordingmedium include of course processing performed in time-sequence followingthe described order, but are not restricted to this, and also includeprocessing executed in parallel or independently even without beingperformed in time-sequence.

It should be understood that in the present specification, the term“system” refers to the entire equipment configured of the multipledevices.

With the information processing apparatus according to the first aspect,the information processing method according to the second aspect, andthe recording medium according to the third aspect, a first controlscreen for controlling the other information processing apparatusesconnected to the network is displayed, second control screen data forcontrolling the selected information processing apparatus is received inthe event that a predetermined information processing apparatus isselected from the other information processing apparatuses based on thefirst control screen, the received second control screen is displayed,and in the event that predetermined instructions are input based on thesecond control screen, signals corresponding to the input are output tothe selected information processing apparatus, thereby allowing otherapparatuses to be controlled event in the event that an apparatus doesnot have commands for directly controlling other apparatuses.

With the information processing apparatus according to the fourthaspect, the information processing method according to the fifth aspect,and the recording medium according to the sixth aspect, control screendata for controlling itself is output to the other informationprocessing apparatuses via the network, signals corresponding to inputfrom the other information processing apparatuses via the network arereceived in the event that predetermined instructions are input based onthe control screen at the other information processing apparatuses, andprocessing corresponding to the received signals is executed, so controlcan be received from apparatuses which do not have control commands.

With the information processing system according to the seventh aspect,a first information processing apparatus displays a first control screenfor controlling information processing apparatuses connected to anetwork including a second information processing apparatus, the secondinformation processing apparatus transmits second control screen datavia the network in the event that the second information processingapparatus is selected based on the first control screen, and the firstinformation processing apparatus displays the received second controlscreen. In the event that predetermined instructions are input based onthe second control screen, the first information processing apparatusoutputs signals corresponding to the input thereof to the secondinformation processing apparatus, the second information processingapparatus receives the signals corresponding to the input, and executesprocessing corresponding to the received signals, so a controllingapparatus which does not have control commands can control othercontrolling apparatuses.

1. An information processing apparatus that is connected to a networkwith other information processing apparatuses, and that is controlled bysaid other information processing apparatuses via said network, saidapparatus comprising: output means for outputting control screen datafor controlling itself to said other information processing apparatusesvia said network; receiving means for receiving first command signalsrequesting said control screen data from said other informationprocessing apparatuses and for receiving second command signalscorresponding to input to said other information processing apparatuseswhen predetermined instructions are input by a user via a controlscreen, at said other information processing apparatuses; and executingmeans for executing processing corresponding to said signals received bysaid receiving means, wherein said control screen includes graphicaluser interface data of said information processing apparatus, and saidsecond command signals notify said information processing apparatus ofan operation performed by said user via said control screen, said firstcommand signals and said second command signals received by thereceiving means are panel sub-unit commands, the control screen dataoutputted by the output means includes graphical user interface (GUI)data and is outputted using an asynchronous connection, and the firstcommand signals include a command by which the other informationprocessing apparatuses confirm the version of the information processingapparatus and a request by the other information processing apparatusesfor updated GUI data from the information processing apparatus.
 2. Theapparatus according to claim 1, further comprising means for generatingGUI data pertaining to one of the other information processingapparatuses.
 3. A first information processing apparatus thatcommunicates with a second information processing apparatus over anetwork, the first information processing apparatus comprising: areceiving unit configured to receive user interface information from thesecond information processing apparatus; an output interface configuredto output the user interface information to a display; a user operationinformation receiving unit configured to receive information regarding auser operation; and a transmitting unit configured to transmit, to thesecond information processing apparatus, first command signalsrequesting control screen data associated with controlling the secondinformation processing apparatus and second command signals representingthe information regarding a user operation from which the secondinformation processing apparatus generates a control command; thecontrol screen data including graphical user interface (GUI) dataassociated with the second information processing apparatus, and thefirst command signals including (i) a command by which the firstinformation processing apparatus confirms the version of thatinformation processing apparatus and (ii) a request by the firstinformation processing apparatus for updated GUI data from the secondinformation processing apparatus.
 4. A first information processingapparatus connected over a network to a second information processingapparatus and being controlled by the second information processingapparatus via the network, the first information processing apparatuscomprising: output means for outputting, to the second informationprocessing apparatus over the network, control screen data associatedwith controlling the first information processing apparatus; receivingmeans for receiving, from the second information processing apparatus,first command signals requesting the control screen data from the secondinformation processing apparatus and second command signals representinginstructions inputted by a user using a control screen associated withthe second information processing apparatus; and executing means forexecuting processing in accordance with the received first and secondcommand signals; the control screen data including graphical userinterface (GUI) data associated with the first information processingapparatus, and the first command signals including (i) a command bywhich the second information processing apparatus confirms the versionof that information processing apparatus and (ii) a request by thesecond information processing apparatus for updated GUI data from thefirst information processing apparatus.